$--var-tooltip-background-color: #4a4a4a !default;

.base-tooltip {
  position: absolute;
  z-index: 99999;
  
  max-width: 360px;
  padding: 6px 8px;

  background-color: $--var-tooltip-background-color;
  color: #ffffff;

  font-size: 14px;
  line-height: 20px;

  border-radius: 3px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.35);
}

.base-tooltip-content{
  white-space: pre-line;
  word-break: break-all;
}

.base-tooltip .base-tooltip__arrow {
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  margin: 5px;
}

.base-tooltip .base-tooltip__arrow{
  border-color: $--var-tooltip-background-color;
}

.base-tooltip[x-placement^="top"] {
  margin-bottom: 5px;
}

.base-tooltip[x-placement^="top"] .base-tooltip__arrow {
  border-width: 5px 5px 0 5px;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  bottom: -5px;
  left: calc(50% - 5px);
  margin-top: 0;
  margin-bottom: 0;
}

.base-tooltip[x-placement^="bottom"] {
  margin-top: 5px;
}

.base-tooltip[x-placement^="bottom"] .base-tooltip__arrow {
  border-width: 0 5px 5px 5px;
  border-left-color: transparent;
  border-right-color: transparent;
  border-top-color: transparent;
  top: -5px;
  left: calc(50% - 5px);
  margin-top: 0;
  margin-bottom: 0;
}

.base-tooltip[x-placement^="right"] {
  margin-left: 5px;
}

.base-tooltip[x-placement^="right"] .base-tooltip__arrow {
  border-width: 5px 5px 5px 0;
  border-left-color: transparent;
  border-top-color: transparent;
  border-bottom-color: transparent;
  left: -5px;
  top: calc(50% - 5px);
  margin-left: 0;
  margin-right: 0;
}

.base-tooltip[x-placement^="left"] {
  margin-right: 5px;
}

.base-tooltip[x-placement^="left"] .base-tooltip__arrow {
  border-width: 5px 0 5px 5px;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  right: -5px;
  top: calc(50% - 5px);
  margin-left: 0;
  margin-right: 0;
}